/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package org.hl7.v3;

import java.util.Arrays;
import java.util.Collections;
import java.util.List;

import org.eclipse.emf.common.util.Enumerator;

/**
 * <!-- begin-user-doc -->
 * A representation of the literals of the enumeration '<em><b>Race American Indian California</b></em>',
 * and utility methods for working with them.
 * <!-- end-user-doc -->
 * <!-- begin-model-doc -->
 * specDomain: S14951 (C-0-T14914-S14915-S14916-S14951-cpt)
 * <!-- end-model-doc -->
 * @see org.hl7.v3.V3Package#getRaceAmericanIndianCalifornia()
 * @model extendedMetaData="name='RaceAmericanIndianCalifornia'"
 * @generated
 */
public enum RaceAmericanIndianCalifornia implements Enumerator {
	/**
	 * The '<em><b>10538</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10538_VALUE
	 * @generated
	 * @ordered
	 */
	_10538(0, "_10538", "1053-8"),

	/**
	 * The '<em><b>10546</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10546_VALUE
	 * @generated
	 * @ordered
	 */
	_10546(1, "_10546", "1054-6"),

	/**
	 * The '<em><b>10553</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10553_VALUE
	 * @generated
	 * @ordered
	 */
	_10553(2, "_10553", "1055-3"),

	/**
	 * The '<em><b>10561</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10561_VALUE
	 * @generated
	 * @ordered
	 */
	_10561(3, "_10561", "1056-1"),

	/**
	 * The '<em><b>10579</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10579_VALUE
	 * @generated
	 * @ordered
	 */
	_10579(4, "_10579", "1057-9"),

	/**
	 * The '<em><b>10587</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10587_VALUE
	 * @generated
	 * @ordered
	 */
	_10587(5, "_10587", "1058-7"),

	/**
	 * The '<em><b>10595</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10595_VALUE
	 * @generated
	 * @ordered
	 */
	_10595(6, "_10595", "1059-5"),

	/**
	 * The '<em><b>10603</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10603_VALUE
	 * @generated
	 * @ordered
	 */
	_10603(7, "_10603", "1060-3"),

	/**
	 * The '<em><b>10611</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10611_VALUE
	 * @generated
	 * @ordered
	 */
	_10611(8, "_10611", "1061-1"),

	/**
	 * The '<em><b>10629</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10629_VALUE
	 * @generated
	 * @ordered
	 */
	_10629(9, "_10629", "1062-9"),

	/**
	 * The '<em><b>10637</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10637_VALUE
	 * @generated
	 * @ordered
	 */
	_10637(10, "_10637", "1063-7"),

	/**
	 * The '<em><b>10645</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10645_VALUE
	 * @generated
	 * @ordered
	 */
	_10645(11, "_10645", "1064-5"),

	/**
	 * The '<em><b>10652</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10652_VALUE
	 * @generated
	 * @ordered
	 */
	_10652(12, "_10652", "1065-2"),

	/**
	 * The '<em><b>10660</b></em>' literal object.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #_10660_VALUE
	 * @generated
	 * @ordered
	 */
	_10660(13, "_10660", "1066-0");

	/**
	 * The '<em><b>10538</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10538</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10538
	 * @model literal="1053-8"
	 * @generated
	 * @ordered
	 */
	public static final int _10538_VALUE = 0;

	/**
	 * The '<em><b>10546</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10546</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10546
	 * @model literal="1054-6"
	 * @generated
	 * @ordered
	 */
	public static final int _10546_VALUE = 1;

	/**
	 * The '<em><b>10553</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10553</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10553
	 * @model literal="1055-3"
	 * @generated
	 * @ordered
	 */
	public static final int _10553_VALUE = 2;

	/**
	 * The '<em><b>10561</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10561</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10561
	 * @model literal="1056-1"
	 * @generated
	 * @ordered
	 */
	public static final int _10561_VALUE = 3;

	/**
	 * The '<em><b>10579</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10579</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10579
	 * @model literal="1057-9"
	 * @generated
	 * @ordered
	 */
	public static final int _10579_VALUE = 4;

	/**
	 * The '<em><b>10587</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10587</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10587
	 * @model literal="1058-7"
	 * @generated
	 * @ordered
	 */
	public static final int _10587_VALUE = 5;

	/**
	 * The '<em><b>10595</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10595</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10595
	 * @model literal="1059-5"
	 * @generated
	 * @ordered
	 */
	public static final int _10595_VALUE = 6;

	/**
	 * The '<em><b>10603</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10603</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10603
	 * @model literal="1060-3"
	 * @generated
	 * @ordered
	 */
	public static final int _10603_VALUE = 7;

	/**
	 * The '<em><b>10611</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10611</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10611
	 * @model literal="1061-1"
	 * @generated
	 * @ordered
	 */
	public static final int _10611_VALUE = 8;

	/**
	 * The '<em><b>10629</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10629</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10629
	 * @model literal="1062-9"
	 * @generated
	 * @ordered
	 */
	public static final int _10629_VALUE = 9;

	/**
	 * The '<em><b>10637</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10637</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10637
	 * @model literal="1063-7"
	 * @generated
	 * @ordered
	 */
	public static final int _10637_VALUE = 10;

	/**
	 * The '<em><b>10645</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10645</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10645
	 * @model literal="1064-5"
	 * @generated
	 * @ordered
	 */
	public static final int _10645_VALUE = 11;

	/**
	 * The '<em><b>10652</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10652</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10652
	 * @model literal="1065-2"
	 * @generated
	 * @ordered
	 */
	public static final int _10652_VALUE = 12;

	/**
	 * The '<em><b>10660</b></em>' literal value.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of '<em><b>10660</b></em>' literal object isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @see #_10660
	 * @model literal="1066-0"
	 * @generated
	 * @ordered
	 */
	public static final int _10660_VALUE = 13;

	/**
	 * An array of all the '<em><b>Race American Indian California</b></em>' enumerators.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private static final RaceAmericanIndianCalifornia[] VALUES_ARRAY =
		new RaceAmericanIndianCalifornia[] {
			_10538,
			_10546,
			_10553,
			_10561,
			_10579,
			_10587,
			_10595,
			_10603,
			_10611,
			_10629,
			_10637,
			_10645,
			_10652,
			_10660,
		};

	/**
	 * A public read-only list of all the '<em><b>Race American Indian California</b></em>' enumerators.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static final List<RaceAmericanIndianCalifornia> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));

	/**
	 * Returns the '<em><b>Race American Indian California</b></em>' literal with the specified literal value.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RaceAmericanIndianCalifornia get(String literal) {
		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
			RaceAmericanIndianCalifornia result = VALUES_ARRAY[i];
			if (result.toString().equals(literal)) {
				return result;
			}
		}
		return null;
	}

	/**
	 * Returns the '<em><b>Race American Indian California</b></em>' literal with the specified name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RaceAmericanIndianCalifornia getByName(String name) {
		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
			RaceAmericanIndianCalifornia result = VALUES_ARRAY[i];
			if (result.getName().equals(name)) {
				return result;
			}
		}
		return null;
	}

	/**
	 * Returns the '<em><b>Race American Indian California</b></em>' literal with the specified integer value.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public static RaceAmericanIndianCalifornia get(int value) {
		switch (value) {
			case _10538_VALUE: return _10538;
			case _10546_VALUE: return _10546;
			case _10553_VALUE: return _10553;
			case _10561_VALUE: return _10561;
			case _10579_VALUE: return _10579;
			case _10587_VALUE: return _10587;
			case _10595_VALUE: return _10595;
			case _10603_VALUE: return _10603;
			case _10611_VALUE: return _10611;
			case _10629_VALUE: return _10629;
			case _10637_VALUE: return _10637;
			case _10645_VALUE: return _10645;
			case _10652_VALUE: return _10652;
			case _10660_VALUE: return _10660;
		}
		return null;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final int value;

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final String name;

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private final String literal;

	/**
	 * Only this class can construct instances.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	private RaceAmericanIndianCalifornia(int value, String name, String literal) {
		this.value = value;
		this.name = name;
		this.literal = literal;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public int getValue() {
	  return value;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public String getName() {
	  return name;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public String getLiteral() {
	  return literal;
	}

	/**
	 * Returns the literal value of the enumerator, which is its string representation.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public String toString() {
		return literal;
	}
	
} //RaceAmericanIndianCalifornia
